/**
 * 
 */
package com.manthano.util.mail;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

import com.manthano.common.bo.Attachment;

/**
 * @author Dell
 */
public class ApplicationEmail implements Serializable
{
	/**
	 * 
	 */
	private static final long	serialVersionUID		= 1442295086423479757L;

	private String				hostName				= null;
	private String				bounceEmailAddress		= null;
	private String				fromName				= null;
	private String				fromAddress				= null;
	private String				subject					= null;
	private String				message					= null;
	private int					smtpPort				= 25;
	private Date				sentDate				= new Date();
	private Set<String>			toRecipients			= new HashSet<String>();
	private Set<String>			ccRecipients			= new HashSet<String>();
	private Set<String>			bccRecipients			= new HashSet<String>();
	private Set<String>			replyToRecipients		= new HashSet<String>();
	private List<Attachment>	attachments				= new ArrayList<Attachment>();
	private List<Attachment>	endOfMailAttachments	= new ArrayList<Attachment>();

	/**
	 * @return the hostName
	 */
	public String getHostName()
	{
		return hostName;
	}

	/**
	 * @param hostName
	 *            the hostName to set
	 */
	public void setHostName(String hostName)
	{
		this.hostName = hostName;
	}

	/**
	 * @return the bounceEmailAddress
	 */
	public String getBounceEmailAddress()
	{
		return bounceEmailAddress;
	}

	/**
	 * @param bounceEmailAddress
	 *            the bounceEmailAddress to set
	 */
	public void setBounceEmailAddress(String bounceEmailAddress)
	{
		this.bounceEmailAddress = bounceEmailAddress;
	}

	/**
	 * @return the fromName
	 */
	public String getFromName()
	{
		return fromName;
	}

	/**
	 * @param fromName
	 *            the fromName to set
	 */
	public void setFromName(String fromName)
	{
		this.fromName = fromName;
	}

	/**
	 * @return the fromAddress
	 */
	public String getFromAddress()
	{
		return fromAddress;
	}

	/**
	 * @param fromAddress
	 *            the fromAddress to set
	 */
	public void setFromAddress(String fromAddress)
	{
		this.fromAddress = fromAddress;
	}

	/**
	 * @return the subject
	 */
	public String getSubject()
	{
		return subject;
	}

	/**
	 * @param subject
	 *            the subject to set
	 */
	public void setSubject(String subject)
	{
		this.subject = subject;
	}

	/**
	 * @return the message
	 */
	public String getMessage()
	{
		return message;
	}

	/**
	 * @param message
	 *            the message to set
	 */
	public void setMessage(String message)
	{
		this.message = message;
	}

	/**
	 * @return the smtpPort
	 */
	public int getSmtpPort()
	{
		return smtpPort;
	}

	/**
	 * @param smtpPort
	 *            the smtpPort to set
	 */
	public void setSmtpPort(int smtpPort)
	{
		this.smtpPort = smtpPort;
	}

	/**
	 * @return the sentDate
	 */
	public Date getSentDate()
	{
		return sentDate;
	}

	/**
	 * @param sentDate
	 *            the sentDate to set
	 */
	public void setSentDate(Date sentDate)
	{
		this.sentDate = sentDate;
	}

	/**
	 * @return the toRecipients
	 */
	public Set<String> getToRecipients()
	{
		return toRecipients;
	}

	/**
	 * @param toRecipients
	 *            the toRecipients to set
	 */
	public void setToRecipients(Set<String> toRecipients)
	{
		this.toRecipients = toRecipients;
	}

	/**
	 * @return the ccRecipients
	 */
	public Set<String> getCcRecipients()
	{
		return ccRecipients;
	}

	/**
	 * @param ccRecipients
	 *            the ccRecipients to set
	 */
	public void setCcRecipients(Set<String> ccRecipients)
	{
		this.ccRecipients = ccRecipients;
	}

	/**
	 * @return the bccRecipients
	 */
	public Set<String> getBccRecipients()
	{
		return bccRecipients;
	}

	/**
	 * @param bccRecipients
	 *            the bccRecipients to set
	 */
	public void setBccRecipients(Set<String> bccRecipients)
	{
		this.bccRecipients = bccRecipients;
	}

	/**
	 * @return the replyToRecipients
	 */
	public Set<String> getReplyToRecipients()
	{
		return replyToRecipients;
	}

	/**
	 * @param replyToRecipients
	 *            the replyToRecipients to set
	 */
	public void setReplyToRecipients(Set<String> replyToRecipients)
	{
		this.replyToRecipients = replyToRecipients;
	}

	/**
	 * @return the attachments
	 */
	public List<Attachment> getAttachments()
	{
		return attachments;
	}

	/**
	 * @param attachments
	 *            the attachments to set
	 */
	public void setAttachments(List<Attachment> attachments)
	{
		this.attachments = attachments;
	}

	/**
	 * @return the endOfMailAttachments
	 */
	public List<Attachment> getEndOfMailAttachments()
	{
		return endOfMailAttachments;
	}

	/**
	 * @param endOfMailAttachments
	 *            the endOfMailAttachments to set
	 */
	public void setEndOfMailAttachments(List<Attachment> endOfMailAttachments)
	{
		this.endOfMailAttachments = endOfMailAttachments;
	}

}
